/**
 * DD-2020011. 冒泡排序
 *
 * 【简单】
 *
 * 给定一个数组，使用冒泡实现排序。
 *
 * 格式：
 *
 * 输入：
 * 一个数组，元素以逗号分隔。
 *
 * 输出：
 * 冒泡排序后的结果。
 *
 * 示例：
 *
 * 输入：71,44,21,76,24,1,3,6
 * 输出：1 3 6 21 24 44 71 76
 */

function bubbleSort(arr: number[]): number[] {
	const { length } = arr

	for (let i = 0; i < length; i++) {
		let isSorted = false

		for (let j = 0; j < length - 1 - i; j++) {
			if (arr[j] > arr[j + 1]) [arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
		}

		if (!isSorted) return arr
	}

	return arr
}
